package logic;

import model.Shain;
import util.Validater;
import dao.DaoShain;
import exception.BusinessException;
import exception.SystemException;


public class SearchDetailLogic {
	//社員所情報アクセスクラス
	private DaoShain dao;
	
	public SearchDetailLogic(){
		// TODO コンストラクタ
	}

	public Shain executeSearchDetail(String shain_no) throws SystemException,BusinessException{
		//入力チェック
		if(!Validater.checkShain_no(shain_no)){
			throw new BusinessException("不正な操作が行われました");
		}
		//社員情報モデルクラス
		Shain shain;
		
		//入力チェックがなければ、DBアクセスする
		try{
			//DBアクセスオブジェクトの作成
			this.dao = new DaoShain();
			//社員の削除
			shain = dao.seachShainDetail(shain_no);
		}
		///システム例外をスロー
		catch (SystemException se){
			throw se;
		}
		//該当社員なしの場合、業務例外をスロー
		catch (BusinessException be){
			throw be;
		}
		//コネクションの削除		
		finally{
			this.dao.closeConnection();
		}
		return shain;
	}
}